This invention relates in general to editing digital images over a network, and, in particular, over the Internet.
Computer systems can hold digital images that are far larger than they can display. A typical computer display has a resolution of approximately 1,000 rows and 1,000 columns, for a total of about 1,000,000 pixels. The computer's hard drive may store images destined eventually for printing at resolutions of thousands of pixels per inch, and containing hundreds of millions or billions of pixels.
Given the inherent mismatch between the size of an image a computer can store and the size of the image it can display, the process of interactively editing high-resolution digital images on a computer is necessarily one in which the image the user sees is a proxy for the image she is actually editing.
A proxy image is created by downsampling or windowing.
Downsampling comprises supplementing an original image by a new lower-resolution image in which each pixel is a weighted average of (or a sample from) a square of pixels from the original image. A downsampled image is a lower-resolution representation of the same scene shown in the original image.
Windowing comprises selecting a rectangular subset of pixels from a larger rectangular image, with the rectangular window parallel to the orientation of the larger rectangle. The windowed image is at the same resolution as the original image, but shows only a fraction of the scene shown in the original image.
The key to making a fast digital-image editing system is to take advantage of the low resolution of the computer display and of the proxy images displayed on it. The number of pixel transformations produced by the system should be on the order of magnitude of the number of pixels delivered to the computer's display screen, with processing of the high-resolution image deferred until the user chooses to save it.
A digital-image editing system is needed which has the rapid image-transformation speed made possible by operating on low-resolution proxy images, but which still makes it possible for the user at any time to zoom into an window of the archival image or of an intermediate-resolution image in order to view the edited version of the higher-resolution image.
The system preferably permits the user to back out of decisions, and revert to an earlier state of the editing session. I.e., the system should permit the user to undo any sequence of editing operations.
The system preferably permits the user to enter edit instructions and to view proxy images on a client computer remote from the server computer on which archival images reside and on which the pixel-transforming edit operations are carried out. I.e., it should be a networked system, suitable for use on local or wide-area networks, and, in particular, on the Internet, using the protocols of the World Wide Web.
The system desirably does all of the above cost-effectively. In particular, the preferred mode is for the system to remain fast and flexible on computers with limited processing speed or with limited amounts of random access memory (RAM) relative to the image editing task.